<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script src="../../../js/ts函数.js"></script>
    <div>ts html</div>
    <div>   
        <div class="box">32</div>
        <div class="box1">
            <div class="box"> 32</div>
        </div>
        
    </div>
</body>
<script>
  let tree = {
    name: 'root',
    value: 1,
    children: [
      {
        name: 'leve1-1',
        value: 2,
        children: [
          {
            name: 'leve1-1-1',
            value: 3
          },
          {
            name: 'leve1-1-2',
            value: 4
          },
          {
            name: 'leve1-1-3',
            value: 5
          }
        ]
      },
      {
        name: 'leve1-2',
        value: 3,
        children: [
        {
            name: 'leve1-2-1',
            value: 6
          },
          {
            name: 'leve1-2-2',
            value: 7
          }
        ]
      },
    ]
  }
  // function visitNode(node) {
  //   console.log(node.name)
  //   return () => {
  //     console.log(node.name)
  //   }
  // }
  // function onionModal(tree) {
  //   console.log(tree.name)
  //   let { children } = tree
  //   if (children) {
  //     children.forEach(child => {
  //       onionModal(child)
  //     })
  //   }
  // }
  // onionModal(tree)


//     function * fn1(value){
//         console.log(value)
//         yield 1+1 
//         yield 2+2 
//         return 999
//     }
//     let abb = fn1()
//     console.log(abb.next(12222))
//     console.log(abb.next(2))
//     console.log(abb.next(3))
//     console.log(abb.next(4))
    
// async function testAsync() {
//     return "hello async";
// }
 
// const result = testAsync(); // 返回一个Promise对象
// console.log('result',result);

// testAsync().then(v => {
//     console.log(v);    // 输出 hello async
// });
//     async function add(){
//         setTimeout(()=>{
//         console.log(2222)
//        },1000)  
//     }
//     let  adasd  =  add()
//     console.log(adasd)
//     add().then(b=>{
//         console.log(2222)
//     })
        // console.log(a,b)
//         const arr1 = [{id:1},{id:2}]
//       const lastIndex = findLastIndex(arr1, function(item, index)  {
//         return item === 1
//       })
//     //   throw new Error('qwert') 
//     const filterArr = myFilter(arr1,(item,index) => {
//         return  item.id > 1
//     })
//     function myFilter(arr,fn) {
//         let res = []
//         if(!Array.isArray(arr)) throw new Error('不是数组')
//         for(let i = 0;i < arr.length; i++){
//             if(fn(arr[i],i)){
//                 res.push(arr[i])
//             }
//         }
//         return res
//     }
//     console.log(filterArr)
//     function findLastIndex(arr, fn) {
//         let lastIndex = -1
//         if(!Array.isArray(arr)) return console.warn('123213')
//       for (let i = arr.length; i >= 0; i--) {
//         if (fn(arr[i], i)) {
//             lastIndex = i
//             break
//         }
//       }
//       return lastIndex
//     }
// //    console.log(lastIndex) 
//    function findLast(arr, fn) {
//         let lastindex = findLastIndex(arr,fn)
//         return arr[lastindex]
//     }
let a = '111'
let b = a
a = '222'
console.log(b,a)
</script>
</html>
<style>
    .box{
        background-color: red;
        height: 100px;
        width: 100px;
        margin: 100px;
    }
    .box1{
        overflow: hidden;

    }
</style>